package com.kld.yqyj.domain.bo;

import com.kld.common.core.validate.AddGroup;
import com.kld.common.core.validate.EditGroup;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import javax.validation.constraints.*;

import java.util.Date;

import java.math.BigDecimal;
import com.kld.common.core.domain.BaseEntity;

/**
 * 油藏开发单元月数据业务对象 t_o_fdb_m
 *
 * @author bw
 * @date 2024-05-15
 */

@Data
@EqualsAndHashCode(callSuper = true)
@ApiModel("油藏开发单元月数据业务对象")
public class TOFdbMBo extends BaseEntity {

    /**
     * 区块单元ID
     */
    @ApiModelProperty(value = "区块单元ID", required = true)
    @NotBlank(message = "区块单元ID不能为空", groups = { EditGroup.class })
    private String geoUnitId;

    /**
     * 区块单元名称
     */
    @ApiModelProperty(value = "区块单元名称", required = true)
    @NotBlank(message = "区块单元名称不能为空", groups = { AddGroup.class, EditGroup.class })
    private String geoUnitName;

    /**
     * 年月
     */
    @ApiModelProperty(value = "年月", required = true)
    @NotNull(message = "年月不能为空", groups = { EditGroup.class })
    private Long yearMon;

    /**
     * 油井开井数
     */
    @ApiModelProperty(value = "油井开井数", required = true)
    @NotNull(message = "油井开井数不能为空", groups = { AddGroup.class, EditGroup.class })
    private Long oProdNum;

    /**
     * 日产液水平
     */
    @ApiModelProperty(value = "日产液水平", required = true)
    @NotNull(message = "日产液水平不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal dLiSp;

    /**
     * 日产油水平
     */
    @ApiModelProperty(value = "日产油水平", required = true)
    @NotNull(message = "日产油水平不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal dOSp;

    /**
     * 单井日产油水平
     */
    @ApiModelProperty(value = "单井日产油水平", required = true)
    @NotNull(message = "单井日产油水平不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal jOSp;

    /**
     * 综合含水
     */
    @ApiModelProperty(value = "综合含水", required = true)
    @NotNull(message = "综合含水不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal wCut;

    /**
     * 平均动液面
     */
    @ApiModelProperty(value = "平均动液面", required = true)
    @NotNull(message = "平均动液面不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal pjPfl;

    /**
     * 水井开井数
     */
    @ApiModelProperty(value = "水井开井数", required = true)
    @NotNull(message = "水井开井数不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal wProdNum;

    /**
     * 单井日注水水平
     */
    @ApiModelProperty(value = "单井日注水水平", required = true)
    @NotNull(message = "单井日注水水平不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal jDInjSp;


}
